X-Git-Url: https://permondes.de/gitweb/Analog_Engine.git/blobdiff_plain/7fbf87e4750e1393d9b6395818b70000ca99c758..6e4089e8217c971c0154c414f5fed5d0807d179e:/scripts/Damped%20Harmonic%20Osciallator%20scaled.AESL?ds=inline diff --git a/scripts/Damped Harmonic Osciallator scaled.AESL b/scripts/Damped Harmonic Osciallator scaled.AESL new file mode 100644 index 0000000..8bae8f3 --- /dev/null +++ b/scripts/Damped Harmonic Osciallator scaled.AESL @@ -0,0 +1,41 @@ +IDENTIFICATION DIVISION +PROGRAM-ID Damped_Oscillator + +ENVIRONMENT DIVISION +ENGINE Anabrid-THAT +TIMEBASE 1ms +REQUIRES COEFFICIENT 5 +REQUIRES INTEGRATOR 2 +REQUIRES INVERTER 1 +REQUIRES SUMMER 2 + +DATA DIVISION +OUTPUT OUTPUT.U y +ALIAS COEFFICIENT.1 InitialPosition +ALIAS COEFFICIENT.2 InitialSpeed +ALIAS COEFFICIENT.3 SpringForce +ALIAS COEFFICIENT.4 Damping # linear to speed +ALIAS COEFFICIENT.5 Mass # 1 / mass + +PROGRAM DIVISION +# Colors being used for wiring +# - black: y0 +# - blue: y0’ +# - green: y0’’ +# - yellow: y’’, y’ +# - red: y +-1 -> InitialPosition -> -y0 # -initial position of the mass +-1 -> InitialSpeed -> y0s’ # y’ is scaled to be within -1..+1 ++1, y0s’, y0s’ -> Summer -> y0’ + +y’’, IC:y0’ -> INTEGRATOR -> -y’ +-y’,IC:-y0 -> INTEGRATOR -> y +y -> SpringForce -> S*y # springforce times displacement +-y’ -> INVERTER -> y’ +y’ -> Damping -> D*y’ # damping times speed +10:S*y, 10:D*y’ -> SUMMER -> -(Dy’+Sy) +-(Dy’+Sy) -> Mass -> -1/m*(Dy’+Sy)=y’’ + +OPERATION DIVISION +MODE REPEAT +OP-TIME 57ms